package com.ftg.learn.day03;

/**
 * 学习for
 *   为了力扣提前一下
 *   　　方法：函数
 *   表示是一个引用类型类里面的成员，这个成员由方法声明以及方法体两部分组成
 *   声明　
 *   体
 * @author 布衣
 */
public class For01 {

    /**
     * １０的累加和
     *
     * [访问修饰符|public|private] [返回值(要与return联用)] [名称](参数列表{形参} 【类型 名称】)
     *sum(20)
     * @return
     */
    public int sum(int n){

        int sum = 0;
        for (int i = 1, max = n; i < max; i++, max--) {
            sum += (i + max);
        }
       return sum;

    }

    public static void main(String[] args) {
        For01 f = new For01();
        System.out.println(f.sum(10));
//        for(ex1 [表示初始值];ex2【条件】:ex3【增量】){
//            //代码块
//        }
        for (int i = 0; i < 5; i++) {
            System.out.print((i + 1) + "\t");
        }

        // 1 2 3 2 1
        System.out.println();
        for (int i = 1, len = 6; i < len; i++) {
            if (i < (len >>> 1)) {
                System.out.print(i + "\t");
            } else {
                System.out.print((len - i) + "\t");
            }
        }

        System.out.println();
        for (int i = 1, len = 6; i < len; i++) {
            System.out.print((i < (len >> 1) ? i : len - i) + "\t");
        }

        System.out.println("10 累加");
        //o(1)
        int sum = 0;
        //o(n)
        //0(n/2)
        for (int i = 1, max = 10; i < max; i++, max--) {
            sum += (i + max);
        }
        System.out.println("和为：" + sum);
//        2147483647
//        1000000000
        System.out.println(Integer.MAX_VALUE);
    }

}
